/* arch/x86/include32/arch/int.h 
 * 
 * Copyright (C) 2021, 2022 intirain. 
 *
 * This file is part of evx. 
 * 
 * evx is free software: you can redistribute it and/or modify 
 * it under the terms of the GNU General Public License as published by 
 * the Free Software Foundation, either version 3 of the License, or 
 * (at your option) any later version. 
 * 
 * evx is distributed in the hope that it will be useful, 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
 * GNU General Public License for more details. 
 * 
 * You should have received a copy of the GNU General Public License 
 * along with evx. If not, see <https://www.gnu.org/licenses/>
 */ 




#ifndef __ARCH_INT_H
#define __ARCH_INT_H

#include <config.h>


#ifndef __ASSEMBLER__

struct idt_entry {
	__uint16_t 	off_0;
	__uint16_t 	seg;

#if CONFIG_64BIT
	__uint8_t 	ist;
#else
	__uint8_t 	resv;
#endif
	__uint8_t 	attr;

	__uint16_t 	off_1;
#if CONFIG_64BIT
	__uint32_t 	off_2;
	__uint32_t 	zero;
#endif
} __attribute__ ((packed));


#endif
#endif

